package com.scatteredServer.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.scatteredServer.pojo.entity.Posting;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.scatteredServer.pojo.query.NoticeQuery;
import com.scatteredServer.pojo.query.PostingQuery;
import com.scatteredServer.pojo.vo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author admin
* @description 针对表【posting(发文表)】的数据库操作Mapper
* @createDate 2024-04-05 15:28:11
* @Entity com.scatteredServer.pojo.entity.Posting
*/
@Mapper
public interface PostingMapper extends BaseMapper<Posting> {

    Page<PostingRoughlyVo> getList(Page<PostingRoughlyVo> page,@Param("qu") PostingQuery postingQuery);


    void updateReadStatusById(@Param("id")Integer id, @Param("readStatusString")String readStatusString);

    List<TeacherInfoMap> getSelector();

    Page<PostingReadStatusVo> getNoticeList(Page<PostingReadStatusVo> page, @Param("qu")NoticeQuery noticeQuery);

    Page<PostingRoughlyTeacherVo> getListByTeacherId(Page<PostingRoughlyTeacherVo> page,  @Param("qu")PostingQuery postingQuery);

    PostingStatusVo postingStatus();

    JobStatusVo jobCount();


    List<ServiceCountVo> serviceCount( @Param("year")String year);

    List<String> getMailByIds(@Param("teacherIds") List<String> teacherIds);

    Posting selectByJson(String teacherId);
}




